
Java.perform(function(){
    const ArrayList = Java.use("java.util.ArrayList")
    
    console.log("开始hook")
    function dumptype(obj){
        if (obj === null) return 'null';
        if (obj === undefined) return 'undefined';
        try {
            // ① 先当 Java 对象处理
            const cls = obj.getClass();          // 能走到这里就说明是 Java 对象
            return 'Java<' + cls.getName() + '>';
        } catch (e) {
            // ② 拿不到 getClass 就是 JS 对象
            return 'JS<' + (obj.constructor.name || typeof obj) + '>';
        }
    }

    try {
        let QG0 = Java.use("X.QG0");
        QG0.LIZ.implementation = function (diversionParams, str) {
            console.log('LIZ is called' + ', ' + 'diversionParams: ' + diversionParams + ', ' + 'str: ' + str);
            let ret = this.LIZ(diversionParams, str);
            console.log('LIZ ret value is ' + ret);
            return ret;
    };
    } catch (e) {
        console.log("hook失败"+e.stack)
    }
})